package xunfei

import "encoding/xml"

type VoiceEvaluationConfig struct {
	AppID     string
	ApiKey    string
	ApiSecret string
}

type VoiceEvaluationParams struct {
	Common struct {
		AppID string `json:"app_id"`
	} `json:"common"`
	Business struct {
		Sub          string `json:"sub"`
		Ent          string `json:"ent"`
		Category     string `json:"category"`
		Aus          int    `json:"aus"`
		Cmd          string `json:"cmd"`
		Text         string `json:"text"`
		Tte          string `json:"tte"`
		TtpSkip      bool   `json:"ttp_skip"`
		ExtraAbility string `json:"extra_ability"`
		Aue          string `json:"aue"`
		Auf          string `json:"auf"`
		Rstcd        string `json:"rstcd"`
		Group        string `json:"group"`
		CheckType    string `json:"check_type"`
		Rst          string `json:"rst"`
		IseUnite     string `json:"ise_unite"`
		Plev         string `json:"plev"`
	} `json:"business"`
	Data struct {
		Data   string `json:"data"`
		Status int    `json:"status"`
	} `json:"data"`
}
type VoiceEvaluationResponse struct {
	Sid     string `json:"sid"`
	Code    int    `json:"code"`
	Message string `json:"message"`
	Data    struct {
		Status int    `json:"status"`
		Data   string `json:"data"`
	} `json:"data"`
}

type VoiceEvaluationFinalResult struct {
	XMLName xml.Name `xml:"FinalResult"`
	Ret     struct {
		Value string `xml:"value,attr"` // 提取 <ret> 标签的 value 属性
	} `xml:"ret"`
	TotalScore struct {
		Value string `xml:"value,attr"` // 提取 <total_score> 标签的 value 属性
	} `xml:"total_score"`
}

type VoiceEvaluationExecReq struct {
	Sn       string //请求序列号
	Filepath string //文件地址
	Text     string //评测文本
}
